package com.mareas.web.jsf.view;

import java.io.Serializable;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.bean.ViewScoped;

import org.springframework.stereotype.Component;

import com.mareas.web.model.Operacion;
import com.mareas.web.model.OperacionEstado;

@Component("listOperacionView")
@ManagedBean
@RequestScoped
public class ListOperacionView extends ListAbstractView<Operacion> implements
		Serializable {

	/**
	 *
	 */
	private static final long serialVersionUID = 1L;

	public ListOperacionView() {
		super();
	}

	@Override
	public List<Operacion> getAll() {
		List<Operacion> all = this.getGenericService().getAll(Operacion.class);
		return all;
	}

	@Override
	public Operacion getNew() {
		return new Operacion();
	}
	
	public void cancelarOperacion() {
		if (getEdited() != null) {
			getEdited().setOperacionEstado(OperacionEstado.CANCELADA
					.getEstado());
			getGenericService().persist(getEdited());
		}
	}

	public void finalizarOperacion() {
		if (getEdited() != null) {
			getEdited().setOperacionEstado(OperacionEstado.CERRADA
					.getEstado());
			store();
		}
	}
}
